Translation Validation for Transformations on Abstract Clocks in Synchronous Languages

نویسندگان

  • Van Chan Ngo
  • Jean-Pierre Talpin
  • Thierry Gautier
  • Paul Le Guernic
چکیده

Translation validation was introduced as a technique to formally verify the correctness of code generators that attempts to verify that program transformations preserve the semantics. In this work, we adopt this approach to formally verify that the clock semantics is preserved during the transformations of a synchronous data-flow compiler. We represent the clock semantics of a program and its transformed counterpart as first-order formulas which are called clock models. Then we introduce a refinement relation which expresses the preservation of clock semantics, as a relation on clock models. Our validator does not require any instrumentation or modification of the compiler, nor any rewriting of the source program. Key-words: Formal Verification, Translation Validation, Certified Compiler, SMT solver, Synchronous Data-flow Languages Validation de Traduction des Transformations sur le Horloges dans les Langues Sychrones Résumé : Translation validation was introduced as a technique to formally verify the correctness of code generators that attempts to verify that program transformations preserve the semantics. In this work, we adopt this approach to formally verify that the clock semantics is preserved during the transformations of a synchronous data-flow compiler. We represent the clock semantics of a program and its transformed counterpart as first-order formulas which are called clock models. Then we introduce a refinement relation which expresses the preservation of clock semantics, as a relation on clock models. Our validator does not require any instrumentation or modification of the compiler, nor any rewriting of the source program. Mots-clés : Formal Verification, Translation Validation, Certified Compiler, SMT solver, Synchronous Data-flow Languages Translation Validation for Transformations on Abstract Clocks 3

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Formal verification of automatically generated C-code from polychronous data-flow equations

Synchronous data-flow languages are used as design approaches in developing embedded and critical real-time systems in which synchronous programs are verified by applying formal verification. In a synchronous design approach, transformation and optimization are used to transform synchronous programs and generate general purpose executable code. The incorrectness of the transformations make the ...

متن کامل

Are Healthcare Organizations Ready for Change?; Comment on “Development and Content Validation of a Transcultural Instrument to Assess Organizational Readiness for Knowledge Translation in Healthcare Organizations: The OR4KT”

Worldwide most health systems are facing a series of common challenges characterized by the increasing burden of chronic diseases and multimorbidity, and the accelerated pace of biomedical and technological innovations, on the other side. There is a growing recognition that many changes are needed at the macro, meso and micro management levels to tackle these challenges. Therefore, knowing if h...

متن کامل

Formal Verification of Transformations on Abstract Clocks in Synchronous Compilers

Translation validation was introduced in the 90’s by Pnueli et al. as a technique to formally verify correctness of code generated from the synchronous data-flow language Signal. Rather than certifying the code generator (by writing it entirely using a theorem prover) or exhaustively qualifying it (by obeying the 27 required documents of DO-178C), translation validation provides a scalable appr...

متن کامل

Clocks as First Class Abstract Types

Clocks in synchronous data-flow languages are the natural way to define several time scales in reactive systems. They play a fundamental role during the specification of the system and are largely used in the compilation process to generate efficient sequential code. Based on the formulation of clocks as dependent types, the paper presents a simpler clock calculus reminiscent to ML type systems...

متن کامل

Pushdown Machines for Weighted Context-Free Tree Translation

Synchronous context-free grammars (or: syntax-directed translation schemata) were introduced in the context of compiler construction in the late 1960s [12]. They define string transductions by the simultaneous derivation of an input and an output word. In contrast, modern systems for machine translation of natural language employ weighted tree transformations to account for the grammatical stru...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013